package com.topisv.tms.rest.qimen.qmentity.request.returninstoragecreate;

import javax.validation.Valid;
import javax.validation.constraints.NotNull;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;

import org.hibernate.validator.constraints.NotBlank;

import com.topisv.tms.rest.qimen.qmentity.SenderInfo;


@XmlAccessorType(XmlAccessType.FIELD)
public class ReturnOrder {
	
    @NotBlank
	@XmlElement(name="returnOrderCode")
	private String returnOrderCode;		//ERP的退货入库单编码
    
    @NotBlank
	@XmlElement(name="warehouseCode")
	private String warehouseCode;		//仓库编码, string (50)
	@XmlElement(name="preDeliveryOrderId")
	private String preDeliveryOrderId;		//原出库单号
	
	@NotBlank
	@XmlElement(name="orderType")
	private String orderType;		//单据类型
	@XmlElement(name="orderFlag")
	private String orderFlag;		//用字符串格式来表示订单标记列表：比如VISIT^ SELLER_AFFORD^SYNC_RETURN_BILL 等, 中间用“^”来隔开 订单标记list (所有字母全部大写) ： VISIT=上门；SELLER_AFFORD=是否卖家承担运费 (默认是) ；SYNC_RETURN_BILL=同时退回发票
	@XmlElement(name="sourceOrderCode")
	private String sourceOrderCode;	//来源单据号, 如销售退货时填充原发货的发货单号
	
	@NotBlank
	@XmlElement(name="logisticsCode")
	private String logisticsCode;	//物流公司编码,
	@XmlElement(name="logisticsName")
	private String logisticsName;		//物流公司名称	
	@XmlElement(name="expressCode")
	private String expressCode;			//运单号
	@XmlElement(name="returnReason")
	private String returnReason;		//退货原因
	@XmlElement(name="senderInfo")
	private SenderInfo senderInfo;		//发件人信息
	@XmlElement(name="remark")
	private String remark;			//备注, string (500) 
	public String getReturnOrderCode() {
		return returnOrderCode;
	}
	public void setReturnOrderCode(String returnOrderCode) {
		this.returnOrderCode = returnOrderCode;
	}
	public String getWarehouseCode() {
		return warehouseCode;
	}
	public void setWarehouseCode(String warehouseCode) {
		this.warehouseCode = warehouseCode;
	}
	public String getPreDeliveryOrderId() {
		return preDeliveryOrderId;
	}
	public void setPreDeliveryOrderId(String preDeliveryOrderId) {
		this.preDeliveryOrderId = preDeliveryOrderId;
	}
	public String getOrderType() {
		return orderType;
	}
	public void setOrderType(String orderType) {
		this.orderType = orderType;
	}
	public String getOrderFlag() {
		return orderFlag;
	}
	public void setOrderFlag(String orderFlag) {
		this.orderFlag = orderFlag;
	}
	public String getSourceOrderCode() {
		return sourceOrderCode;
	}
	public void setSourceOrderCode(String sourceOrderCode) {
		this.sourceOrderCode = sourceOrderCode;
	}
	public String getLogisticsCode() {
		return logisticsCode;
	}
	public void setLogisticsCode(String logisticsCode) {
		this.logisticsCode = logisticsCode;
	}
	public String getLogisticsName() {
		return logisticsName;
	}
	public void setLogisticsName(String logisticsName) {
		this.logisticsName = logisticsName;
	}
	public String getExpressCode() {
		return expressCode;
	}
	public void setExpressCode(String expressCode) {
		this.expressCode = expressCode;
	}
	public String getReturnReason() {
		return returnReason;
	}
	public void setReturnReason(String returnReason) {
		this.returnReason = returnReason;
	}
	public SenderInfo getSenderInfo() {
		return senderInfo;
	}
	public void setSenderInfo(SenderInfo senderInfo) {
		this.senderInfo = senderInfo;
	}
	public String getRemark() {
		return remark;
	}
	public void setRemark(String remark) {
		this.remark = remark;
	}
	
	
}
